﻿<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>net6.0-windows</TargetFramework>
    <UseWindowsForms>true</UseWindowsForms>
    <ApplicationIcon>Icons\mRemoteNG.ico</ApplicationIcon>
    <Version>1.77.3</Version>
    <Description>Multi-protocol remote connections manager</Description>
    <Copyright>2022 mRemoteNG Dev Team, 2010-2013 Riley McArdle, 2007-2009 Felix Deimel</Copyright>
    <PackageLicenseFile>COPYING.TXT</PackageLicenseFile>
    <PackageProjectUrl>https://mremoteng.org/</PackageProjectUrl>
    <Platforms>x64</Platforms>
    <Configurations>Debug;Release;Debug Portable;Release Portable;Release Installer</Configurations>
    <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
    <LangVersion>latest</LangVersion>
    <PackageIcon>Header_dark.png</PackageIcon>
	<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
	<UseWPF>True</UseWPF>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <DefineConstants>DEBUG</DefineConstants>
    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
    <WarningsAsErrors />
    <OutputPath>bin\x64\Debug\</OutputPath>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
    <DefineConstants />
    <Optimize>false</Optimize>
    <OutputPath>bin\x64\Release\</OutputPath>
    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
    <WarningsAsErrors />
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Portable|x64'">
    <DefineConstants>DEBUG;PORTABLE</DefineConstants>
    <Optimize>false</Optimize>
    <OutputPath>bin\x64\Debug Portable\</OutputPath>
    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
    <WarningsAsErrors />
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Portable|x64'">
    <DefineConstants>PORTABLE</DefineConstants>
    <Optimize>false</Optimize>
    <OutputPath>bin\x64\Release Portable\</OutputPath>
    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
    <WarningsAsErrors />
  </PropertyGroup>

  <ItemGroup>
    <None Remove="buildenv.tmp" />
    <None Remove="UI\Font\HandelGotDBol.ttf" />
  </ItemGroup>

  <ItemGroup>
    <COMReference Include="MSTSCLib">
      <WrapperTool>aximp</WrapperTool>
      <VersionMinor>0</VersionMinor>
      <VersionMajor>1</VersionMajor>
      <Guid>8c11efa1-92c3-11d1-bc1e-00c04fa31489</Guid>
      <Lcid>0</Lcid>
      <Isolated>false</Isolated>
      <EmbedInteropTypes>false</EmbedInteropTypes>
    </COMReference>
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="Castle.Core" Version="5.0.0" />
    <PackageReference Include="ConsoleControl" Version="1.3.0" />
    <PackageReference Include="Cucumber.Messages" Version="16.0.1" />
    <PackageReference Include="DockPanelSuite" Version="3.1.0" />
    <PackageReference Include="DockPanelSuite.ThemeVS2003" Version="3.1.0" />
    <PackageReference Include="DockPanelSuite.ThemeVS2005" Version="3.1.0" />
    <PackageReference Include="DockPanelSuite.ThemeVS2012" Version="3.1.0" />
    <PackageReference Include="DockPanelSuite.ThemeVS2013" Version="3.1.0" />
    <PackageReference Include="DockPanelSuite.ThemeVS2015" Version="3.1.0" />
    <PackageReference Include="log4net" Version="2.0.14" />
    <PackageReference Include="Microsoft-WindowsAPICodePack-Shell" Version="1.1.4" />
    <PackageReference Include="Microsoft.Web.WebView2" Version="1.0.1264.42" />
    <PackageReference Include="MySql.Data" Version="8.0.30" />
    <PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
    <PackageReference Include="Npgsql" Version="7.0.0-preview.6" />
    <PackageReference Include="ObjectListView.Official" Version="2.9.1" />
    <PackageReference Include="OpenCover" Version="4.7.1221" />
    <PackageReference Include="Portable.BouncyCastle" Version="1.9.0" />
    <PackageReference Include="Renci.SshNet.Async" Version="1.4.0" />
    <PackageReference Include="ReportGenerator" Version="5.1.9" />
    <PackageReference Include="System.Data.Common" Version="4.3.0" />
    <PackageReference Include="System.Data.SqlClient" Version="4.8.3" />
    <PackageReference Include="System.DirectoryServices" Version="6.0.0" />
    <PackageReference Include="System.Management" Version="6.0.0" />
    <PackageReference Include="System.Resources.ResourceManager" Version="4.3.0" />
    <PackageReference Include="VncSharpCore" Version="1.2.1" />
  </ItemGroup>

  <ItemGroup>
    <Compile Update="Properties\OptionsBackupPage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsBackupPage.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\OptionsAdvancedPage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsAdvancedPage.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\OptionsAppearancePage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsAppearancePage.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\OptionsConnectionsPage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsConnectionsPage.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\OptionsCredentialsPage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsCredentialsPage.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\OptionsDBsPage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsDBsPage.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\OptionsNotificationsPage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsNotificationsPage.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\OptionsSecurityPage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsSecurityPage.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\OptionsStartupExitPage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsStartupExitPage.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\OptionsTabsPanelsPage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsTabsPanelsPage.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\OptionsThemePage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsThemePage.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\rbac.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>rbac.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\Settings.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>Settings.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\AppUI.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>AppUI.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\App.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>App.settings</DependentUpon>
    </Compile>
    <Compile Update="Properties\OptionsUpdatesPage.Designer.cs">
      <DesignTimeSharedInput>True</DesignTimeSharedInput>
      <AutoGen>True</AutoGen>
      <DependentUpon>OptionsUpdatesPage.settings</DependentUpon>
    </Compile>
  </ItemGroup>

  <ItemGroup>
    <None Update="Icons\Admin.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Anti Virus.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Apple.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Backup.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Build Server.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Console.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Database.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Domain Controller.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\ESX.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Fax.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\File Server.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Finance.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Firewall.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Infrastructure.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Linux.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Log.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Mail Server.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\mRemote.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\mRemoteNG.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\PowerShell.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Production.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\PuTTY.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\RaspberryPi.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Remote Desktop.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Router.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\SharePoint.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\SSH.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Staging.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Switch.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Tel.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Telnet.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Terminal Server.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Test Server.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Virtual Machine.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Web Server.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\WiFi.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Windows.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Icons\Workstation.ico">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="log4net.config">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Properties\OptionsBackupPage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsBackupPage.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\OptionsAdvancedPage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsAdvancedPage.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\OptionsAppearancePage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsAppearancePage.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\OptionsConnectionsPage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsConnectionsPage.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\OptionsCredentialsPage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsCredentialsPage.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\OptionsDBsPage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsDBsPage.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\OptionsNotificationsPage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsNotificationsPage.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\OptionsSecurityPage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsSecurityPage.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\OptionsStartupExitPage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsStartupExitPage.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\OptionsTabsPanelsPage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsTabsPanelsPage.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\OptionsThemePage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsThemePage.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\rbac.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>rbac.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\Settings.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>Settings.Designer.cs</LastGenOutput>
    </None>
    <None Update="mRemoteNG.VisualElementsManifest.xml">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Properties\AppUI.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>AppUI.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\App.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>App.Designer.cs</LastGenOutput>
    </None>
    <None Update="Properties\OptionsUpdatesPage.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>OptionsUpdatesPage.Designer.cs</LastGenOutput>
    </None>
    <None Update="PuTTYNG.exe">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Resources\Header_dark.png">
      <Pack>True</Pack>
      <PackagePath>\</PackagePath>
    </None>
    <None Update="Resources\PuTTYNG.exe">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Schemas\mremoteng_confcons_v2_5.xsd">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Schemas\mremoteng_confcons_v2_6.xsd">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Schemas\mremoteng_confcons_v2_7.xsd">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Schemas\mremoteng_credrepo_list_v1_0.xsd">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Schemas\mremoteng_creds_v1_0.xsd">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Themes\darcula.vstheme">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Themes\vs2015blue.vstheme">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Themes\vs2015dark.vstheme">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="Themes\vs2015light.vstheme">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="VisualElements_150.png">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="VisualElements_70.png">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Include="..\COPYING.TXT">
      <Pack>True</Pack>
      <PackagePath></PackagePath>
    </None>
  </ItemGroup>

  <Target Name="PreBuild" BeforeTargets="PreBuildEvent">
    <Exec Command="echo $(ConfigurationName) &gt; buildenv.tmp" />
  </Target>

  <Target Name="PostBuild" AfterTargets="PostBuildEvent">
    <Exec Command=":: When passing paths to powershell scripts, check if the path ends with a backslash &quot;\&quot;&#xD;&#xA;:: If it does, then the backslash may be interpreted as an escape character. Add another backslash to cancel the first one.&#xD;&#xA;&#xD;&#xA;powershell -noprofile -command &quot;sleep 2&quot;&#xD;&#xA;&#xD;&#xA;set /p buildenv=&lt;buildenv.tmp&#xD;&#xA;&#xD;&#xA;:: Manual builds, set the cert password and uncomment below.&#xD;&#xA;:: IF &quot;%25APPVEYOR_BUILD_FOLDER&quot;==&quot;&quot; ( set cert_pwd= )&#xD;&#xA;&#xD;&#xA;:: Call the post build powershell script&#xD;&#xA;powershell.exe -ExecutionPolicy Bypass -File &quot;$(SolutionDir)Tools\postbuild_mremoteng.ps1&quot; -SolutionDir &quot;$(SolutionDir)\&quot; -TargetDir &quot;$(TargetDir)\&quot; -TargetFileName &quot;mRemoteNG.exe&quot; -ConfigurationName &quot;%25buildenv%25&quot; -CertificatePath &quot;$(CertPath)&quot; -CertificatePassword &quot;$(CertPassword)&quot; -ExcludeFromSigning &quot;PuTTYNG.exe&quot;" />
  </Target>

  <ItemGroup>
    <ProjectReference Include="..\ExternalConnectors\ExternalConnectors.csproj" />
  </ItemGroup>

  <ItemGroup>
    <Resource Include="UI\Font\HandelGotDBol.ttf">
      <CopyToOutputDirectory>Never</CopyToOutputDirectory>
    </Resource>
  </ItemGroup>

  <ItemGroup>
    <PackageReference Update="chromiumembeddedframework.runtime.win-x64" Version="92.0.25" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Update="chromiumembeddedframework.runtime.win-x86" Version="92.0.25" />
  </ItemGroup>

</Project>